home *** CD-ROM | disk | FTP | other *** search
- Object-Cache für Hänisch-Modula
- ===============================
-
- © 1989, Andreas Alich
- Rittergasse 4
- 8700 Würzburg
-
- KontoNr. 5102900
- Städtische Sparkasse Würzburg
- BLZ 790 500 00
-
- EMail: Maus Würzburg, 0931/201 39 25
-
- Dieses Programm ist Public-Domain. Es darf zu nicht kommerziellen Zwecken
- frei kopiert und weitergegeben werden, jedoch nur in unveränderter Form
- und zusammen mit diesem Text. Sollte jemand dieses Programm nützlich
- finden und für wertvoll halten, so freue ich mich trotzdem über Spenden
- ('Kleinvieh macht auch Mist!').
-
-
- Zweck:
-
- Das Programm puffert die Object-Files, auf die nur lesend zugegriffen
- wird, und auf Wunsch auch die Ausgabe (besonders beim Linken vorteilhaft).
- Dadurch wird der Compilierungs- und Linkvorgang bei Hänisch-Modula
- erheblich beschleunigt. Besonders praktisch ist der Cache in der
- Entwicklungsphase eines Moduls, solange sich noch Syntax-Fehler im
- Quellcode befinden, da ab dem zweiten Compilieren nicht mehr auf die
- Festplatte (bzw. Diskette) zugegriffen wird, sofern der Puffer groß genug
- ist.
-
- Das Programm wurde für Festplatte entwickelt, kann aber auch als
- teilweiser Ersatz für eine Ramdisk dienen. Objects, an denen man nicht
- arbeitet, sollten dann auf Diskette zur Verfügung gestellt werden, die
- anderen Files sollten sich auf der Ramdisk befinden. Der Object-Cache hat
- gegenüber einer Ramdisk den Vorteil, daß er nur die benötigten Files
- puffert. Sollte der Puffer nicht ausreichen, so kann trotzdem
- weitergearbeitet werden (wenn auch langsamer). Der Write-Cache dürfte beim
- Arbeiten mit Ramdisk keinen Geschwindigkeitsvorteil bringen. Zu beachten
- ist beim Arbeiten mit Disketten, daß das Wechseln der Diskette die
- gepufferten Files nicht ungültig macht.
-
-
- Installation:
-
- Um den Object-Cache zu installieren, gibt man dem Compiler zunächst eine
- neue Extension (z. B. .OC). Dann meldet man OC.PRG als Anwendung für diese
- Extension an. (Im Desktop OC.PRG selektieren und im EXTRAS-Menü 'Anwendung
- anmelden' wählen. Abspeichern des DESKTOP.INF nicht vergessen!). Der
- Compiler läßt sich danach wie gewohnt durch Doppelklick auf seinen Namen
- starten. Dabei wird nun zunächst OC.PRG gestartet und dann der Compiler.
-
-
- Einstellen der Parameter:
-
- Wird beim Starten von OC.PRG eine der Tasten Shift, Control oder Alternate
- gedrückt oder ist CapsLock aktiv, so werden die Parameter für den
- Object-Cache erfragt. Die eingestellten Parameter werden dann im Programm
- selbst abgespeichert (dazu muß es den Namen OC.PRG haben).
-
- Die Werte können mit den Tasten '+', '-' und 'Esc' verändert werden. Die
- Tasten '+' und '-' erhöhen bzw. erniedrigen den Wert um 1 (zusammen mit
- Shift um 10). 'Esc' setzt den Wert auf Null.
-
- Setzt man die Object-Cache-Größe auf Null, so wird der Cache nicht
- installiert. Die Installation eines Write-Caches ist dann nicht möglich.
- Ebenso wird kein Write-Cache installiert, falls man die Write-Cache-Größe
- auf Null setzt.
-
-
- Funktion:
-
- Der Object-Cache puffert alle Files mit der Extension .OBJ, auf die nur
- lesend zugegriffen wird (d. h. die mit Fopen Modus 0 geöffnet werden).
- Dabei werden nur solche Files gepuffert, deren Länge höchstens die halbe
- Pufferlänge beträgt.
-
- Ist der Puffer voll, so werden soviele alte Files aus dem Puffer entfernt,
- bis das neue File in den Puffer paßt. Dabei wird ein File jedoch
- mindestens solange gepuffert, wie bei 'minimale Pufferzeit' angegeben
- wird. Die minimale Pufferzeit sollte deshalb mindestens so groß gewählt
- werden, daß während eines Compilierungs- bzw. Linkvorganges kein File aus
- dem Puffer entfernt wird. (Ansonsten werden die Files immer wieder neu in
- den Puffer gelesen, falls dieser nicht groß genug ist, alle Objects auf
- einmal zu puffern).
-
- Wird ein File, das sich im Puffer befindet, zum Schreiben geöffnet, so
- wird es aus dem Puffer entfernt.
-
- Der Write-Cache kann nur dann installiert werden, wenn ein Object-Cache
- installiert wurde. Er puffert alle Files, die mit Fcreate erzeugt werden.
-
- Der Programmteil, der für die Installation zuständig ist (Einstellen der
- Werte usw.), wird als Pufferbereich genutzt.
-
- Steht nach der Installation des Caches nicht genug Speicher zur Verfügung,
- um den Compiler zu starten, so bricht das Programm ab.
-
-
- PS.:
- Da jedes Programm mindestens noch einen Fehler enthält, wird wohl auch in
- diesem Programm noch ein Fehler versteckt sein. Sollte ihn jemand
- entdecken, so wäre ich für eine Mitteilung dankbar.
-